/* The file is saved in UTF-8 codepage.
 * Check: «Stereotype», Section mark-§, Copyright-©, Alpha-α, Beta-β, Smile-☺
 */
package cz.pecinovsky.english.lootp.ufo;
/*******************************************************************************
 *<pre>
 * Předchozí:   Není - toto_je_nově_definovaná_třída
 *              Ttt v projektu Ppp
 * Následující: Prozatím není
 *
 * Projekt  Ppp
 *   + Přidáno
 *   - Odebráno
 *   ~ Změněno
 *</pre>
 */


////////////////////////////////////////////////////////////////////////////////
//%%+  +++++ End of ignored starting test - place for imports +++++


/*******************************************************************************
 * Instance třídy {@code TovárnaNaUFO} představují továrny,
 * které na požádání vyrobí nové UFO se zadanými parametry.
 * Vyráběná UFO musejí být instancí třídy implementující rozhraní {@link IUFO}.
 *
 * @author Rudolf PECINOVSKÝ
 * @version 6.03.2017 — 2010-11-08
 */
//%A+ -=132y
public class TovárnaNaUFO implements ITovárnaNaUFO
//%A-
//%I+ =132y
//public class TovárnaNaUFO_P implements ITovárnaNaUFO
//%I-
{
//== CONSTANT CLASS ATTRIBUTES =================================================
//== VARIABLE CLASS ATTRIBUTES =================================================
//== STATIC CONSTRUCTOR (CLASS INITIALIZER, STATIC INICITALIZING BLOCK) ======== 
//== CONSTANT INSTANCE ATTRIBUTES ==============================================
//== VARIABLE INSTANCE ATTRIBUTES ==============================================
//== CLASS GETTERS AND SETTERS =================================================
//== OTHER NON-PRIVATE CLASS METHODS ===========================================

//##############################################################################
//== CONSTUCTORS AND FACTORY METHODS ===========================================

    /***************************************************************************
     *
     */
//%A+ -=132y
    public TovárnaNaUFO()
//%A-
//%I+ =132y
//    public TovárnaNaUFO_P()
//%I-
    {
    }


//== ABSTRACT METHODS ==========================================================
//== INSTANCE GETTERS AND SETTERS ==============================================
//== OTHER NON-PRIVATE INSTANCE METHODS ========================================

    /***************************************************************************
     * Metoda je vyvolána dipečerem poté,
     * co dispečera někdo požádá o přistavení nového UFO.
     * Dispečer vytvoří talíř, umístí jej na startovní rampu a
     * předá jej metodě jako parametr
     * spolu s pořadím vytvářeného UFO v rámci všech dosud vytvořených UFO.
     *
     * @param talíř   Odkaz na talíř tvořící kostru UFO
     * @param pořadí  Pořadí konstruovaného UFO v rámci již vytvořených
     * @return Nová instance rozhraní {@link IUFO}
     */
    @Override
    public IUFO newUFO(ITalíř talíř, int pořadí)
    {
//%A+ -=132y
        return new UFO(talíř, pořadí);
//%A-
//%I+ =132y
//        return new UFO_P(talíř, pořadí);
//%I-
    }



//== PRIVATE AND AUXILIARY CLASS METHODS =======================================
//== PRIVATE AND AUXILIARY INSTANCE METHODS ====================================
//== EMBEDDED TYPES AND INNER CLASSES ==========================================
//== TESTING CLASSES AND METHODS ===============================================
//
//    /***************************************************************************
//     * Test method.
//     */
//    public static void test()
//    {
//        TovárnaNaUFO inst = new TovárnaNaUFO();
//    }
//    /** @param args Parametry příkazového řádku - nepoužívané. */
//    public static void main(String[] args)  {  test();  }
}
